#include <ctime>
#include <iostream>
#include <fstream>
using namespace std;

void bubbleSort(int list[], int listLength) {
	while(listLength--) 	{
		bool sawap = false;
		
		for(int i = 0; i < listLength; i++) {
			if(list[i] > list[i + 1]){
				swap(list[i], list[i + 1]);
				sawap = true;
			}
		}	
	
		if(sawap == false) break;
	}
}

void read(const char *filename, int a[], int length) {
    ifstream file(filename);

    for(int i=0; i < length; i++)
        file >> a[i];
}
//сама программа
int main()
{
    #define LEN 5000
    int a[LEN];

    read("m1_sorted.txt",a,LEN);
    unsigned int t_start =  clock(); // начальное время
    bubbleSort(a,LEN);
    unsigned int finish = clock(); // конечное время
    unsigned int work = finish - start; // искомое время
    cout<<"m1_sorted " << work << " milliseconds\n";
    
    read("m2_reverse.txt",a,LEN);
    start =  clock(); // начальное время
    bubbleSort(a,LEN);
    finish = clock(); // конечное время
    work = finish - start; // искомое время
    cout<<"m2_reverse " << work << " milliseconds\n";
    
    read("m3_shuffle.txt",a,LEN);
    start =  clock(); // начальное время
    bubbleSort(a,LEN);
    finish = clock(); // конечное время
    work = finish - start; // искомое
    cout<<"m3_shuffle " << work << " milliseconds\n";
    
    return 0;
}
